/* Copyright (c) 2004-2022 peigen.info. All rights reserved. */

package info.peigen.hotpot.common.core.domain.order;

import info.peigen.hotpot.common.core.lang.money.Money;
import lombok.AccessLevel;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import lombok.experimental.FieldDefaults;
import lombok.experimental.SuperBuilder;

import java.util.Date;
import java.util.List;

/**
 * <b>(Order)</b>
 *
 * @author Peigen
 * @version 1.0.0
 * @since 2021/9/24
 */
@SuperBuilder
@Data
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults(level = AccessLevel.PRIVATE)
@Accessors(chain = true)
public class Order {
    /** 订单ID（会作为申报的时的detailNo） */
    String           orderId;
    /** 订单编号 */
    String           orderNo;
    /** 订单原币总额 */
    Money            originTotalAmount;
    /** 订单总额 */
    Money            totalAmount;
    /** 订单日期 */
    Date             orderTime;
    /** 客户信息 */
    OrderCustomer    customerInfo;
    /** 商品信息 */
    List<OrderGoods> goodsList;
    /** 物流信息 */
    OrderLogistics   logisticsInfo;
    /** 店铺信息 */
    OrderShop        shopInfo;
    /** 商品大类编号 */
    String           productId;
}